###########################################################################
#
#   Copyright 2010 American Public Media Group
#
#   This file is part of AIR2.
#
#   AIR2 is free software: you can redistribute it and/or modify
#   it under the terms of the GNU General Public License as published by
#   the Free Software Foundation, either version 3 of the License, or
#   (at your option) any later version.
#
#   AIR2 is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#   GNU General Public License for more details.
#
#   You should have received a copy of the GNU General Public License
#   along with AIR2.  If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################

package AIR2::TankSource;

use strict;

use base qw(AIR2::DB);

__PACKAGE__->meta->setup(
    table => 'tank_source',

    columns => [
        tsrc_id       => { type => 'serial',  not_null => 1 },
        tsrc_tank_id  => { type => 'integer', default  => '', not_null => 1 },
        tsrc_cre_user => { type => 'integer', not_null => 1 },
        tsrc_upd_user => { type => 'integer' },
        tsrc_cre_dtim => { type => 'datetime', not_null => 1 },
        tsrc_upd_dtim => { type => 'datetime' },
        tsrc_tags          => { type => 'varchar',   length    => 255 },
        src_id             => { type => 'integer' },
        src_uuid           => { type => 'character', length    => 12 },
        src_username       => { type => 'varchar',   length    => 255 },
        src_first_name     => { type => 'varchar',   length    => 64 },
        src_last_name      => { type => 'varchar',   length    => 64 },
        src_middle_initial => { type => 'character', length    => 1 },
        src_pre_name       => { type => 'varchar',   length    => 64 },
        src_post_name      => { type => 'varchar',   length    => 64 },
        src_status         => { type => 'character', length    => 1 },
        src_channel        => { type => 'character', length    => 1 },
        sa_name            => { type => 'varchar',   length    => 64 },
        sa_first_name      => { type => 'varchar',   length    => 64 },
        sa_last_name       => { type => 'varchar',   length    => 64 },
        sa_post_name       => { type => 'varchar',   length    => 64 },
        smadd_primary_flag => { type => 'integer' },
        smadd_context      => { type => 'character', length    => 1 },
        smadd_line_1       => { type => 'varchar',   length    => 128 },
        smadd_line_2       => { type => 'varchar',   length    => 128 },
        smadd_city         => { type => 'varchar',   length    => 128 },
        smadd_state        => { type => 'character', length    => 2 },
        smadd_cntry        => { type => 'character', length    => 2 },
        smadd_zip          => { type => 'character', length    => 10 },
        smadd_lat          => { type => 'float',     precision => 32 },
        smadd_long         => { type => 'float',     precision => 32 },
        sph_primary_flag   => { type => 'integer' },
        sph_country        => { type => 'character', length    => 3 },
        sph_number         => { type => 'varchar',   length    => 12 },
        sph_ext            => { type => 'varchar',   length    => 12 },
        sem_primary_flag   => { type => 'integer' },
        sem_context        => { type => 'character', length    => 1 },
        sem_email          => { type => 'varchar',   length    => 255 },
        sem_effective_date => { type => 'date' },
        sem_expire_date    => { type => 'date' },
        suri_primary_flag  => { type => 'integer' },
        suri_context       => { type => 'character', length    => 1 },
        suri_type          => { type => 'character', length    => 1 },
        suri_value         => { type => 'varchar',   length    => 255 },
        suri_handle        => { type => 'varchar',   length    => 128 },
        suri_feed          => { type => 'varchar',   length    => 255 },
        so_home_flag       => { type => 'integer' },
        org_uuid           => { type => 'character', length    => 12 },
        org_name           => { type => 'varchar',   length    => 32 },
        srcan_type         => { type => 'character', length    => 1 },
        srcan_value        => { type => 'text',      length    => 65535 },
        sc_type            => { type => 'character', length    => 1 },
        sc_seq             => { type => 'integer' },
        sc_effective_date  => { type => 'date' },
        sc_value           => { type => 'varchar',   length    => 128 },
        sc_basis           => { type => 'varchar',   length    => 128 },
        sc_comment         => { type => 'text',      length    => 65535 },
        sc_uri             => { type => 'varchar',   length    => 255 },
        sc_public_flag     => { type => 'integer' },
        sc_expire_date     => { type => 'date' },
        sc_conf_level      => { type => 'character', length    => 1 },
        sf_src_value       => { type => 'text',      length    => 65535 },
        sf_fact_id         => { type => 'integer' },
        fact_identifier    => { type => 'varchar',   length    => 128 },
        ss_conf_level      => { type => 'character', length    => 1 },
        ss_value           => { type => 'text',      length    => 65535 },
        ss_basis           => { type => 'varchar',   length    => 128 },
        ss_comment         => { type => 'text',      length    => 65535 },
        ss_uri             => { type => 'varchar',   length    => 255 },
        ss_public_flag     => { type => 'integer' },
        spec_abbrev        => { type => 'varchar',   length    => 10 },
        sact_desc          => { type => 'varchar',   length    => 255 },
        sact_notes         => { type => 'text',      length    => 65535 },
        actm_id            => { type => 'integer' },
        actm_name          => { type => 'varchar',   length    => 128 },
    ],

    primary_key_columns => ['tsrc_id'],
);

1;

